"""
Todo清单模型
"""

from app.db import db


class Todo(db.Model):
    # 定义表名
    __tablename__ = 'todo_record'
    # 用户id
    user_id = db.Column(db.Integer, db.ForeignKey('user_info.id'))
    # 主键
    id = db.Column(db.Integer, primary_key=True)
    # todo描述
    description = db.Column(db.Text, nullable=False)
    # 应完成时间
    deadline = db.Column(db.Date)
    # 具体目标指向id
    goal_id = db.Column(db.Integer, db.ForeignKey('goal.id'))
    # 可选，是否是某个项目的子任务。
    project_id = db.Column(db.Integer, db.ForeignKey('program.id'))
    # 自我评分
    self_score = db.Column(db.Integer)
    # 项目节点归属
    node_id = db.Column(db.Integer,default=0,comment="项目节点归属:0起步节点,1过程节点,2关键达成节点,3项目完成节点,4项目放弃节点")
    # 重要性
    importance = db.Column(db.Integer, nullable=False)
    # 完成情况，0为未完成，1为完成
    is_done = db.Column(db.Integer, default=0)
    # 日志-感想，总结。
    remark = db.Column(db.Text)
    # 可选：成果附件路径。
    attachment = db.Column(db.Text)
    # 提交时间
    submit_time = db.Column(db.DateTime, nullable=False, default=db.func.now())
    # 此任务专注时长，单位：分钟。
    focus_time = db.Column(db.Integer, nullable=False, default=0)
